The invention relates to video processing methods, and more particularly, to video conversion methods for frame rate reduction.
MPEG-4 is an ISO/IEC standard developed by Moving Picture Experts Group (MPEG), the committee that also developed the Emmy Award winning standards known as MPEG-1 and MPEG-2. MPEG-4 is the successor to MPEG-1 and MPEG-2 video standards. ISO standard committee implemented this standard in 1998. Instead of using current frame-based video technology, it adopts the object-oriented concept, which integrates existing multimedia technologies, such as 2D/3D graphics, animation, video codec, multimedia streaming, interactive, and programmatic environments into a single architecture.
The following describes video processing based on MPEG-4 format images.
A video stream is a sequence of video frames. Each frame is a still image. A video player displays one frame after another, usually at a rate close to 30 frames per second. Frames are divided into 16×16 pixel macroblocks (not shown). Each macroblock consists of four 8×8 luminance blocks and two 8×8 chrominance blocks (1 U and 1 V) (not shown). Macroblocks are the units for motion-compensated compression. Blocks are used for DCT compression.
Video data complying with the MPEG-4 format files is composed of three different types of frames, comprising intra-frames (I-frames), forward predicted frames (P-frames), and bidirectional predicted frames (B-frames). An I-frame is encoded as a single image, with no reference to any past or future frames, referring to the fact that the various lossless and lossy compression techniques are performed relative to information that is contained only within the current frame, and not relative to any other frame in the video sequence. In other words, no temporal processing is performed outside of the current picture or frame. A P-frame is encoded relative to the past reference frame. A reference frame is a P- or I-frame. The past reference frame is the closest preceding reference frame. Each macroblock in a P-frame can be encoded either as an Intra-macroblock or as a Inter-macroblock. An Intra-macroblock is encoded just like a macroblock in an I-frame encoded with no reference. A B-frame is encoded relative to the past reference frame, the future reference frame, or both frames. The future reference frame is the closest following reference frame (I or P). The encoding for B-frames is similar to P-frames, except that motion vectors may refer to areas in the future reference frames. For macroblocks that use both past and future reference frames, the two 16×16 areas are averaged.
As described above, a video stream is a sequence of video frames. An input encoded sequence of video frames, for example, is represented as “I(0) P(3) B(1) B(2) P(6) B(4) B(5) I(9) B(7) B(8) P(12) B(11) P(12)” (the bracketed number is the display order of each frame). The output decoded sequence of the video frames is then represented as “I(0) B(1) B(2) P(3) B(4) B(5) P(6) B(7) B(8) I(9) B(10) B(11) P(12)”.
Conventional video conversion methods reduce frame rates of dynamic compression images for the following purposes. Reducing frame rate to reduce bit-rates of image data satisfies insufficient bandwidth of video transmission, lower efficiency of play devices, and rapidly browsing with limited time.
Generally, implementations of frame rate reduction can only process fixed and predetermined multiple ratios. Selections and calculations for motion vectors corresponding to each frame rate reduction method are complicated and different for each, such that each reduction program must be designed for each desired frame rate, increasing difficulties in program design and renders it incapable of involving all multiple ratios of frame rates. Consequently, play devices can only select and play applicable frame rates of image data, a fixed number of program segments are required based on the fixed number of frame rates, and complete viewing is impossible due to the limited time.
Thus, an improved method for video frame rate reduction is desirable.